Packet extension for wireless communication

ABSTRACT

Methods, systems, and apparatuses are described for providing device(s) with additional processing time to process a packet received wirelessly while still meeting the legacy SIFS time constraint. The additional processing time may be achieved by adding, by a device transmitting the packet, padding and/or a packet extension to the last symbol of the packet. The additional processing time provided to the device(s) advantageously reduces the amount of extra hardware that would normally be added to meet the SIFS time constraint. The amount of padding and/or packet extension to be added to the last symbol is balanced to minimize the complexity of the device(s) against the reduction in system efficiency incurred by the device(s).

CROSS REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No.15/855,245, filed Dec. 27, 2017, which is continuation of U.S. patentapplication Ser. No. 15/013,653, filed Feb. 2, 2016, which claims thebenefit of U.S. Provisional Application Ser. No. 62/111,378, filed Feb.3, 2015, U.S. Provisional Application Ser. No. 62/129,003, filed Mar. 5,2015, U.S. Provisional Application Ser. No. 62/158,433, filed May 7,2015, U.S. Provisional Application Ser. No. 62/172,753, filed Jun. 8,2015, U.S. Provisional Application Ser. No. 62/183,545, filed Jun. 23,2015, U.S. Provisional Application Ser. No. 62/187,733, filed Jul. 1,2015, U.S. Provisional Application Ser. No. 62/216,127, filed Sep. 9,2015, U.S. Provisional Application Ser. No. 62/277,741, filed Jan. 12,2016, and U.S. Provisional Application Ser. No. 62/287,325, filed Jan.26, 2016, the entireties of all of which are incorporated by referenceherein.

BACKGROUND Technical Field

The subject matter described herein relates to the processing of packetsreceived in accordance with wireless communication protocol(s).

Description of Related Art

Wi-Fi is a trade name owned by an international trade organization knownas the Wi-Fi Alliance. The organization promotes and certifies thatsubmitted products comply with the group's very specific standards. Moretechnically, Wi-Fi is based on specifications developed by the Instituteof Electrical and Electronic Engineers (IEEE). The term Wi-Fispecifically refers to IEEE 802.11 technology and the two terms aresometimes used interchangeably.

Though 802.11 is the overall specification for Wi-Fi, it has manysubdivisions that specify requirements such as quality of service orsecurity. Each subdivision is designated by a lower case letterfollowing the 802.11 designation. There are several core technologysubdivisions that are frequently seen when referring to generationalimprovements in Wi-Fi technology.

802.11b operates on the 2.4 GHz frequency band. It has a maximumbandwidth of 11 Mbps and is the slowest Wi-Fi standard. It is also themost susceptible to interference. In its favor, it has much longer rangethan 802.11a. It was popular when first released because it was lessexpensive than 802.11a.

802.11a is much faster than the 802.11b standard, transferring up to 54Mbps. It is also much less sensitive to interference from other wirelessdevices and appliances. On the downside, it has shorter range than the802.11b standard. This made it more expensive primarily because itrequired more access points to cover a given distance.

802.11g was successful at combining the best features of the Wi-Fi802.11a and 802.11b standards. It utilizes the 2.4 GHz band, but canalso achieve data transfer speeds of 54 Mbps. The signal range is goodand is not as easily obstructed by obstacles as 802.11a. Operating inthe 2.4 GHz range, however, could still result in some interference fromother devices.

802.11n (or 802.11an for clients that support both 802.11a and 802.11n)represents a major improvement over all of its predecessors. Usingmultiple wireless signals and antennas, its MIMO (Multiple InputMultiple Out) technology, increases data transfer speed up to 450 Mbpsunder ideal circumstances, greatly increases range, and reduces deadspots that were characteristic of prior versions.

802.11ac provides greater performance than 802.11n, withfirst-generation products operational at up to 1.3 Gbps maximum datarates, or about three times faster than the maximum 450 Mbps data rateof today's 802.11n products. 802.11ac operates only in the 5 GHzunlicensed spectrum, whereas 802.11n operates in both the 2.4 GHz and 5GHz spectrums.

802.11ax is the successor to 802.11ac and is expected to increase theefficiency of wireless LAN (WLAN) networks. The Orthogonal FrequencyDivision Multiplexing (OFDM) symbol size is increased to be four timesthat over 802.11an and 802.11ac. Thus, 802.11ax may require four timesthe amount of frequency and bit domain processing per symbol thancompared to 802.11an and 802.11ac. The throughput is approximately thesame as 802.11an and 802.11ac.

However, the Short Interframe Space (SIFS) (i.e., the amount of timerequired for a wireless device to process a received packet and send anacknowledgment to a wireless device that transmits the packet) of802.11ax is the same as that of 802.11an and 802.11ac. A receiveroperating in accordance with 802.11ax will need to process four timesthe data in the final OFDM symbol in the same amount of time as in802.11ac and 802.11an.

Moreover, the physical (PHY) layer of the receiver has potentially fourtimes the frequency and bit domain processing requirements to meet theSIFS time, which requires additional hardware or faster hardware toperform Fast Fourier Transforms (FFTs), demodulation and errorcorrection coding (e.g., low-density parity-check (LDPC) coding).

BRIEF SUMMARY

Methods, systems, and apparatuses are described for the processing ofpackets received in accordance with a wireless communication protocol,substantially as shown in and/or described herein in connection with atleast one of the figures, as set forth more completely in the claims.

BRIEF DESCRIPTION OF THE DRAWINGS/FIGURES

The accompanying drawings, which are incorporated herein and form a partof the specification, illustrate embodiments and, together with thedescription, further serve to explain the principles of the embodimentsand to enable a person skilled in the pertinent art to make and use theembodiments.

FIG. 1 is a block diagram of a wireless communication system inaccordance with an embodiment

FIG. 2 is a block diagram of a system for providing a packet extensionfor a packet to be transmitted to a single wireless communication devicein accordance with an embodiment.

FIG. 3 is a block diagram illustrating the contents of an example802.11ax PPDU packet in accordance with an embodiment.

FIG. 4 is a block diagram of a portion of a PPDU packet in accordancewith an embodiment.

FIG. 5 shows a table illustrating a two-bit encoding used for a segmentboundary parameter in accordance with an embodiment.

FIG. 6 shows a table illustrating a number of resource units allocatedfor each of a first three short symbol segments for a given total numberof resource units allocated for a whole OFDM symbol in accordance withan embodiment.

FIG. 7 is a block diagram of a portion of a PPDU packet to betransmitted using Space Time Block Coding (STBC) in accordance with anembodiment.

FIG. 8 shows a table illustrating an example three-bit encoding used forconstellation thresholds in accordance with an embodiment.

FIGS. 9A-9D show block diagrams of a portion of a PPDU packet to betransmitted to a wireless communication device for which it isdetermined that a maximum packet extension duration of 8 μs is supportedin accordance with one or more embodiments.

FIGS. 10A-10D show block diagrams of a portion of a PPDU packet to betransmitted to a wireless communication device for which it isdetermined that a maximum packet extension duration of 16 μs issupported in accordance with one or more embodiments.

FIG. 11 shows a table for determining a number of codewords and acodeword length for a packet in accordance with an embodiment.

FIG. 12 shows a table for determining a number of symbols in a packet inaccordance with an embodiment.

FIG. 13 shows a flowchart of a method performed by a transmitter fordetermining a packet extension duration in accordance with an embodiment

FIG. 14 shows a block diagram of a transmitter in accordance with anembodiment.

FIG. 15 is a block diagram of a system for providing a packet extensionfor a packet to be transmitted to a plurality of wireless communicationdevices in accordance with an embodiment.

FIG. 16 shows a table for determining a number of payload bits per userin accordance with an embodiment.

FIG. 17 shows a table for determining a number of payload bits per userin accordance with another embodiment.

FIG. 18 shows a flowchart of a method performed by a transmitter fordetermining a packet extension duration in accordance with anotherembodiment.

FIG. 19 shows a block diagram of a transmitter in accordance withanother embodiment.

FIG. 20 is a block diagram of a computer system in accordance with anembodiment.

Embodiments will now be described with reference to the accompanyingdrawings.

DETAILED DESCRIPTION I. Introduction

The present specification discloses numerous example embodiments. Thescope of the present patent application is not limited to the disclosedembodiments, but also encompasses combinations of the disclosedembodiments, as well as modifications to the disclosed embodiments.

References in the specification to “one embodiment,” “an embodiment,”“an example embodiment,” etc., indicate that the embodiment describedmay include a particular feature, structure, or characteristic, butevery embodiment may not necessarily include the particular feature,structure, or characteristic. Moreover, such phrases are not necessarilyreferring to the same embodiment. Further, when a particular feature,structure, or characteristic is described in connection with anembodiment, it is submitted that it is within the knowledge of oneskilled in the art to effect such feature, structure, or characteristicin connection with other embodiments whether or not explicitlydescribed.

Numerous exemplary embodiments are described as follows. It is notedthat the section/subsection headings used herein are not intended to belimiting. Embodiments described in this document may be eligible forinclusion within multiple different sections or subsections.Furthermore, disclosed embodiments may be combined with each other inany manner.

In particular, a method performed by a transmitter is described. Inaccordance with the method, one or more first capabilities of at least afirst receiver are determined. A segment boundary parameter isdetermined that indicates a number of short symbol segments, which areincluded in a final symbol of a frame to be transmitted to at least thefirst receiver, that include a combination of at least one of datapayload and a first type of padding. A first duration of a first packetextension to be added to the end of the frame is determined based on thedetermined one or more first capabilities and the determined segmentboundary parameter.

A system is also described herein. The system comprises one or moreprocessing units and a memory coupled to the one or more processingunits, the memory storing instructions, which, when executed by the oneor more processing units, are configured to perform operations. Inaccordance with the operations, one or more first capabilities of atleast a first receiver are determined. A segment boundary parameter isdetermined that indicates a number of short symbol segments, which areincluded in a final symbol of a frame to be transmitted to at least thefirst receiver, that include a combination of at least one of datapayload and a first type of padding. A first duration of a first packetextension to be added to the end of the frame is determined based on thedetermined one or more first capabilities and the determined segmentboundary parameter.

A computer-readable storage medium having program instructions recordedthereon that, when executed by a processing device, perform a method fordetermining a duration for a packet extension. In accordance with themethod, one or more first capabilities of at least a first receiver aredetermined. A segment boundary parameter is determined that indicates anumber of short symbol segments, which are included in a final symbol ofa frame to be transmitted to at least the first receiver, that include acombination of at least one of data payload and a first type of padding.A first duration of a first packet extension to be added to the end ofthe frame is determined based on the determined one or more firstcapabilities and the determined segment boundary parameter.

IL Packet Extension for Wireless Communication

Techniques described herein provide device(s) with additional processingtime to process a packet received wirelessly while still meeting thelegacy SIFS time constraint. The additional processing time may beachieved by adding, by a device transmitting the packet, padding and/ora packet extension to the last symbol of the packet. The additionalprocessing time provided to the device(s) advantageously reduces theamount of extra hardware that would normally be added to meet the SIFStime constraint. The amount of padding and/or packet extension to beadded to the last symbol is balanced to minimize the complexity of thedevice(s) against the reduction in system efficiency incurred by thedevice(s).

FIG. 1 is a block diagram of a wireless communication system 100 inaccordance with an embodiment. As shown in FIG. 1, wirelesscommunication system 100 includes a base station (BS) and/or accesspoint (AP) 102, a BS or AP 104, a BS or AP 106, a wireless communicationdevice 108, a wireless communication device 110, a wirelesscommunication device 112, a wireless communication device 114, awireless communication device 116, a wireless communication device 118,a wireless communication device 120, and a network hardware component122. Each of BS or APs 102, 104, and 106 and network hardware component122 may be a computing device, including a desktop computer, a mobilecomputer or computer device (e.g., a laptop computer, a notebookcomputer, a tablet computer, a smart phone), an access point, a router,a modem, or any other device capable of transmitting and/or receivingdata in accordance with any of the wireless protocols described above.Each of wireless communication devices 108, 110, 112, 114, 116, 118, and120 may be referred to as a station (or “STA”).

As shown in FIG. 1, wireless communication device 108 is a first laptop,wireless communication device 110 is a first smart phone, wirelesscommunication device 112 is a tablet, wireless communication device 114is a first computer, wireless communication device 116 is a secondcomputer, wireless communication device 118 is a second laptop, andwireless communication device 120 is a second smart phone. The depictionof these particular wireless communication devices is merely forillustrative purposes. Each of wireless communication devices 108, 110,112, 114, 116, 118, and 120 may be any wireless communication devicecapable of transmitting and/or receiving data in accordance with any ofthe wireless protocols described above. It is also noted that the numberof base stations or access points (i.e., BS or AP 102, BS or AP 104, andBS or AP 106) and/or number of wireless communication devices (i.e.,wireless communication devices 108, 110, 112, 114, 116, 118, and 120)shown in FIG. 1 are purely exemplary and that any number of basestations or access points and/or wireless communication devices may beincluded in system 100.

Each of BS or APs 102, 104, and 106 may be operably coupled to networkhardware component 122 via a wired or wireless connection. Examples ofnetwork hardware component 122 include, but are not limited to, arouter, switch, bridge, modem, system controller, and/or the like. Eachof BS or AP 102, BS or AP 104, and BS or AP 106 has one or more antennasfor communication with one or more wireless communication devices in itsarea. For example, as shown in FIG. 1, BS or AP 102 is configured towirelessly communicate with wireless communication devices 108 and 110,BS or AP 104 is configured to wirelessly communicate with wirelesscommunication devices 112 and 114, and BS or AP 106 is configured towirelessly communicate with wireless communication devices 116, 118, and120.

Each of BS or APs 102, 104 and 106 and/or wireless communication devices108, 110, 112, 114, 116, 118, and 120 may be configured to transitand/or receive one or packets (also referred to as “frame(s)”) inaccordance with one or more wireless protocols. Examples of wirelessprotocols include IEEE 802.11ax (also known as a High Efficiency (HE)protocol), IEEE 802.11an (also known as a High Throughput (HT)protocol), IEEE 802.11ac (also known as a Very High Throughput (VHT)protocol), etc.

When transmitting packets using the IEEE 802.11ax protocol, each of BSor APs 102, 104 and 106 may provide additional processing time forwireless communication device(s) 108, 110, 112, 114, 116, 118, and 120to process a packet received from BS or AP(s) 102, 104 and/or 106 whilestill meeting the legacy SIFS time constraint. The additional processingtime may be achieved by adding, by the BS or AP transmitting the packet(i.e., BS or AP 102, 104, or 106), padding (e.g., physical layer (PHY)padding) and/or a packet extension to the last symbol of the packet. Theamount of PHY padding to be added may depend on a number of short symbolsegments that comprise the final symbol that include data payload and/ormedia access layer (MAC) padding. The duration of the packet extensionto be added may depend on one or more capabilities of the wirelesscommunication device to which the packet is being sent. The wirelesscommunication device receiving the packet may infer the data payloadlength and the duration of the packet extension of the packet based atleast on a segment boundary parameter determined and provided by thetransmitting BS or AP, which indicates the number of short symbolsegments in a final symbol of the packet that include the data payloadand/or MAC padding.

Packet transmission from a BS or AP to a wireless communication devicemay be referred to as a downlink (DL) transmission, and packettransmission from a wireless communication device to a BS or AP may bereferred to as an uplink (UL) transmission.

The following subsections describe various embodiments. In particular,Subsection A describes embodiments directed to providing a packetextension for a DL packet using a single-user (SU) transmission scheme,where a BS or AP transmits a packet to a single wireless communicationdevice. Subsection B describes embodiments directed to providing apacket extension for a DL packet using a multi-user (MU) transmissionscheme, where a BS or AP transmits a packet to a plurality of wirelesscommunication devices. Subsection C describes various embodimentsdirected to UL transmissions.

A. Single-User Transmission Schemes

FIG. 2 is a block diagram of a system 200 for providing a packetextension for a packet to be transmitted to a single wirelesscommunication device 204 in accordance with an embodiment. As shown inFIG. 2, system 200 includes a BS or AP 202 and wireless communicationdevice 204. BS or AP 202 may be an example of any of BS or APs 102, 104,and 106, and wireless communication device 204 may be an example of anyof wireless communication devices 108, 110, 112, 114, 116, 118, and 120,as described above in reference to FIG. 1.

BS or AP 202 may include a communication interface 206 and a processor208. Communication interface 206 may be configured to transmit and/orand receive packet(s) to and/or from wireless communication device 204.Processor 208 may be configured to perform various operations includinggenerating, formatting, and/or encoding packet(s) for transmission bycommunication interface 206 and/or decoding packet(s) received fromwireless communication device 204 via communication interface 206. Whentransmitting a packet using the IEEE 802.11ax protocol, processor 208may be further configured to add one or more types of padding to thedata payload included in the packet and/or a packet extension to thepacket. Communication interface 206 may comprise one or more antennas.

A packet (or “frame”) transmitted by BS or AP 202 and/or received bywireless communication device 204 may be an orthogonalfrequency-division multiple access (OFDMA) packet. Processor 208 mayallocate a particular number of resource units (RUs) (e.g., sub-carriersor tones) for each OFDM symbol. The number of resource units allocatedmay be dependent on the bandwidth at which BS or AP 202 transmits apacket. Examples of a packet include, but are not limited to, a physicallayer convergence procedure (PLCP) protocol data unit (PPDU), a NullData Packet (NDP), etc.

For example, FIG. 3 shows an example 802.11ax PPDU packet 300 inaccordance with an embodiment. As shown in FIG. 3, PPDU packet 300 mayinclude a legacy preamble 320, an HE preamble 322, a data payload field316 and/or a packet extension (PE) 318. Legacy preamble 320 and/or HEpreamble 322 may be collectively referred to as the header of PPDUpacket 300. Legacy preamble 320 may include a non-HT (i.e., a legacy)short training field (L-STF) 302, a non-HT long training field (L-LTF)304, a non-HT SIGNAL field (L-SIG) 306, and a repeated non-HT SIGNALfield (RL-SIG) 308. L-STF 302 may be used by legacy (i.e., non-802.11axcompatible) wireless communication devices for frame timing acquisition,automatic gain control (AGC) convergence, and/or course frequencyacquisition. L-LTF 304 may be used by legacy wireless communicationdevices for frequency offset and channel estimation. L-SIG 306 and/orRL-SIG 308 may include control information utilized by legacy wirelesscommunication devices for demodulating and decoding data payloadincluded in data payload field 316. As will be described below L-SIG 306may also include a LENGTH field that specifies the length oftransmission for PPDU packet 300. This ensures that legacy devicesrespect the total packet duration, and therefore, prevents legacydevices from interfering with another device's transmission. HE preamble322 may include an HE Signal A Field (HE-SIG-A) 310, an HE shorttraining field (HE-STF) 312, and one or more HE long training fields(HE-LTF) 314. HE-SIG-A 310 may include control information utilized bywireless communication device 204 for demodulating and decoding datapayload included in data payload field 316. For example, as will bedescribed below, HE-SIG-A 310 may include a segment boundary parameterthat indicates a number of short symbol segments (that are included in afinal symbol of PPDU packet 300) that includes a combination of at leastone of data payload and a first type of padding (e.g., MAC padding).HE-SIG-A may also include a low density parity check (LDPC) parameterthat indicates whether LDPC was used when encoding PPDU packet 300. WhenLDPC is used, an extra symbol (e.g., an LDPC symbol) of parity bits issometimes added as part of the data payload. HE-STF 312 may be used bywireless communication device 204 for frame timing acquisition, AGCconvergence, and/or course frequency acquisition. HE-LTF(s) 314 may beused by wireless communication device 204 for frequency offset andchannel estimation. Data payload field 316 may comprise one or moresymbols (e.g., OFDMA symbols) of data. The data may include tail bits,which are used to terminate a trellis of a convolutional decoder (e.g.,implemented by a processor (not shown) of wireless communication device204), service bits (e.g., which may be a bit sequence used forinitializing a scrambler (e.g., implemented by a processor (not shown)of wireless communication device 204)), and other known types of bits(e.g., excess bits). PE 318 may provide wireless communication device204 additional processing time to process PPDU packet 300 so that thelegacy SIFS time constraint is met. PE 318 may vary from packet topacket and its duration may depend on the segment boundary parameterand/or one or more capabilities of wireless communication device 204.

The process in which processor 208 determines the segment boundaryparameter will now be described with reference to FIG. 4. FIG. 4 is ablock diagram of a portion of a PPDU packet 400 in accordance with anembodiment. In particular, PPDU packet 400 shows a portion of a datapayload field (e.g., data payload field 316, as shown in FIG. 3) forsake of brevity. As shown in FIG. 4, PPDU packet 400 comprises a firstOFDM symbol 402 and a second OFDM symbol 404. Second OFDM symbol 404 isthe final symbol of the data payload field of PPDU packet 400. Asfurther shown in FIG. 4, first OFDM symbol 402 fully comprises datapayload, and second OFDM symbol 404 partially includes data payload.Processor 208 may determine the segment boundary parameter by segmentingthe final symbol (i.e., second OFDM symbol 404) into a plurality ofshort symbol segments (e.g., a first short symbol segment 406, a secondshort symbol segment 408, a third short symbol segment 410, and a fourthshort symbol segment 412). First segment boundary 414 represents the endof first short symbol segment 406 and the beginning of second shortsymbol segment 408, second segment boundary 416 represents the end ofsecond short symbol segment 408 and the beginning of third short symbolsegment 410, third segment boundary 418 represents the end of thirdshort symbol segment 410 and the beginning of fourth short symbolsegment 412, and fourth segment boundary 420 represents the end offourth short symbol segment 412 (and the end of second OFDM symbol 404).

Processor 208 may determine the last short symbol segment of theplurality of short symbol segments that includes data payload. Forexample, with reference to FIG. 4, processor 208 may determine thatthird short symbol segment 410 is the last short symbol segment toinclude data payload. Thereafter, processor 208 may add a first type ofpadding to the determined short symbol segment up to the next segmentboundary. For example, with reference to FIG. 4, processor 208determines that third short symbol segment 410 is the last short symbolsegment to include data payload and appends the first type of padding(e.g., MAC padding 422) to the data payload up to the next segmentboundary (i.e., third segment boundary 418). Processor 208 may add asecond type of padding to the remaining short symbol segments. Forexample, with reference to FIG. 4, processor 208 pads fourth shortsymbol segment 412 with PHY padding 424. It is noted that the first typeof padding may not be needed in situations in which the data payloadincluded in the final symbol ends at a segment boundary. The segmentboundary parameter may correspond to the number of short symbol segmentsthat include a combination of at least one of data payload and the firsttype of padding (i.e., the boundary parameter at which the data payloadand/or the first type of padding end within the final symbol of the PPDUpacket). For example, with reference to FIG. 4, the segment boundaryparameter may indicate that third segment boundary 418 is the segmentboundary at which the data payload and/or MAC padding 422 ends and thatthe number of short symbol segments that includes a combination of atleast one of data payload and MAC padding 422 is three (i.e., firstshort symbol segment 406, second short symbol segment 408, and thirdshort symbol segment 410). In accordance with an embodiment, MAC padding422 is pre-forward error correction (FEC) padding, and PHY padding 424is post-FEC padding.

The post-FEC padding sequence should have a good peak to average powerratio (PAPR). In accordance with an embodiment, the post-FEC paddingsequence is a 127 length sequence. In accordance with such anembodiment, the post-FEC padding sequence is the following:

Post-FEC Sequence={00001110 11110010 11001001 00000010 00100110 0010111010110110 00001100 11010100 11100111 10110100 00101010 11111010 0101000110111000 1111111}  (Equation 1)

It is noted that the sequence of Equation 1 is the same scramblingsequence used for OFDM modulation. It has been observed that thisscrambling sequence has a good PAPR for post-FEC padding sequences. Inaccordance with one or more embodiments, only the portion of thesequence of Equation 1 needed to fill the post-FEC padding requirementof a given frame is used. If necessary, the sequence of Equation 1 isrepeated. In accordance with one or more embodiments in which BS or AP202 is performing a multi-user (MU) transmission (i.e., BS or AP 202 istransmitting a packet to multiple wireless communication devices), adifferent seed (i.e., initialization value) should be used for eachwireless communication device, as using the same seed for each wirelesscommunication device results in bad PAPR.

As described above, the determined segment boundary parameter may beprovided in the header of the PPDU packet being provided to wirelesscommunication device 204. In particular, the segment boundary parametermay be provided in a two-bit field of the HE-SIG-A field (i.e., HE-SIG-Afield 310, as shown in FIG. 3). FIG. 5 shows a table illustrating thetwo-bit encoding used for the determined segment boundary parameter inaccordance with an embodiment. For example, as shown in FIG. 5, ifprocessor 208 determines that the determined segment boundary is thefirst segment boundary (i.e., first segment boundary 414, as shown inFIG. 4), the two-bit value used in the HE-SIG-A field is ‘01.’ Ifprocessor 208 determines that the determined segment boundary is thesecond segment boundary (i.e., second segment boundary 416, as shown inFIG. 4), the two-bit value used in the HE-SIG-A field is ‘10.’ Ifprocessor 208 determines that the determined segment boundary is thethird segment boundary (i.e., third segment boundary 418, as shown inFIG. 4), the two-bit value used in the HE-SIG-A field is ‘11.’ Ifprocessor 208 determines that the determined segment boundary is thefourth segment boundary (i.e., fourth segment boundary 420, as shown inFIG. 4), the two-bit value used in the HE-SIG-A field is ‘00.’

In accordance with an embodiment, the number of short symbol segments inwhich the final symbol of a PPDU packet is segmented is approximatelyfour equal short symbol segments (i.e., each short symbol segment isapproximately a quarter symbol). FIG. 6 shows a table illustrating thenumber of data subcarriers allocated for each of the first three shortsymbol segments for a given resource unit size allocated for a wholeOFDM symbol in accordance with an embodiment. The number of datasubcarriers allocated for the final (or fourth) short symbol segment maybe determined by subtracting the sum of the data subcarriers allocatedfor the first three short symbol segments from the given total number ofdata subcarriers allocated for the whole OFDM symbol. For example, withreference to FIG. 6, if resource unit size 26 is allocated for a wholeOFDM symbol, 6 data subcarriers are allocated for each of the firstthree short symbol segments, and 8 (i.e., 26-18) data subcarriers areallocated for the fourth and final short symbol segment. If resourceunit size 52 is allocated for a whole OFDM symbol, 12 data subcarriersare allocated for each of the first three short symbol segments, and 16(i.e., 52-36) data subcarriers are allocated for the fourth and finalshort symbol segment. If resource unit size 106 is allocated for a wholeOFDM symbol, 24 data subcarriers are allocated for each of the firstthree short symbol segments, and 34 (i.e., 106-72) data subcarriers areallocated for the fourth and final short symbol segment. If resourceunit size 242 is allocated for a whole OFDM symbol, 60 data subcarriersare allocated for each of the first three short symbol segments, and 62(i.e., 242-180) data subcarriers are allocated for the fourth and finalshort symbol segment. If resource unit size 484 is allocated for a wholeOFDM symbol, 120 data subcarriers are allocated for each of the firstthree short symbol segments, and 124 (i.e., 484-360) data subcarriersare allocated for the fourth and final short symbol segment. If resourceunit size 996 is allocated for a whole OFDM symbol, 240 data subcarriersare allocated for each of the first three short symbol segments, and 276(i.e., 996-720) data subcarriers are allocated for the fourth and finalshort symbol segment. If resource unit size 996×2 is allocated for awhole OFDM symbol, 492 data subcarriers are allocated for each of thefirst three short symbol segments, and 516 (i.e., (996×2)−1476) datasubcarriers are allocated for the fourth and final short symbol segment.

In accordance with an embodiment in which processor 208 uses Space-TimeBlock Coding (STBC) to transmit a packet, the final two symbols of thepacket are divided into four segments and MAC padding is performed up tothe next segment boundary (if needed). PHY padding may be performed forthe remainder of the final two symbols. For example, FIG. 7 is a blockdiagram of a portion of a PPDU packet 700 to be transmitted using STBCin accordance with an embodiment. In particular, PPDU packet 700 shows aportion of a data payload field (e.g., data payload field 316, as shownin FIG. 3) for sake of brevity. As shown in FIG. 7, PPDU packet 700comprises a first OFDM symbol 702 and a second OFDM symbol 704. FirstOFDM symbol 702 and second OFDM symbol 704 are the final two symbols ofthe data payload field of PPDU packet 700. As further shown in FIG. 7,first OFDM symbol 702 fully comprises data payload, and second OFDMsymbol 704 partially includes data payload. Processor 208 may determinethe segment boundary parameter by segmenting the final two symbols(i.e., first second OFDM symbol 702 and second OFDM symbol 704) intofour short symbol segments (e.g., a first short symbol segment 706, asecond short symbol segment 708, a third short symbol segment 710, and afourth short symbol segment 712).

Processor 208 may determine the last short symbol segment of theplurality of short symbol segments that includes data payload. Forexample, with reference to FIG. 7, processor 208 may determine thatthird short symbol segment 710 is the last short symbol segment toinclude data payload. Thereafter, processor 208 may add a first type ofpadding to the determined short symbol segment up to the next segmentboundary. For example, with reference to FIG. 7, processor 208determines that third short symbol segment 710 is the last symbolsegment to include data payload and appends the first type of padding(e.g., MAC padding 722) to the data payload up to the next segmentboundary (i.e., third segment boundary 718). Processor 208 may add asecond type of padding to the remaining symbol segments. For example,with reference to FIG. 7, processor 208 pads fourth short symbol segment712 with PHY padding 724. It is noted that the first type of padding maynot be needed in situations in which the data payload included in thefinal symbol ends at a segment boundary. The segment boundary parametermay correspond to the number of short symbol segments that include acombination of at least one of data payload and the first type ofpadding (i.e., the boundary parameter at which the data payload and/orthe first type of padding end within the final symbol of the PPDUpacket). For example, with reference to FIG. 7, the segment boundaryparameter may indicate that third segment boundary 718 is the segmentboundary at which the data payload and/or MAC padding 722 ends and thatthe number of short symbol segments that includes a combination of atleast one of data payload and MAC padding 722 is three (i.e., firstshort symbol segment 706, second short symbol segment 708, and thirdshort symbol segment 710).

As described above, processor 208 may determine the duration of packetextension to be added to the end of a packet based on the segmentboundary parameter and one or more capabilities of wirelesscommunication device 204. The one or more capabilities of wirelesscommunication device 204 may be determined during an association processbetween BS or AP 202 and wireless communication device 204. Theassociation process enables BS or AP 202 and wireless communicationdevice 204 to allocate resources and synchronize with each other.Wireless communication device 204 may begin the association process bysending an association request to BS or AP 202. The association requestmay advertise one or more capabilities of wireless communication device204 (e.g., supported data rates, device type (or class), the service setidentifier (SSID) of the network it wishes to be associated with, etc.).After receiving the association request, BS or AP 202 considersassociating with wireless communication device 204, and (if accepted)reserves memory space and establishes an association ID for wirelesscommunication device 204.

In accordance with an embodiment, wireless communication device 204advertises two constellation thresholds for each bandwidth and number ofspatial streams (e.g., antennas) combination supported by wirelesscommunication device 204. Each of the two constellation thresholdsdefine a constellation level (e.g., binary phase-shift keying (BPSK),quadrature phase-shift keying (QPSK), 16-quadrature amplitude modulation(QAM), 64-QAM, 256-QAM, or 1024-QAM) at which a maximum duration ofpacket extension (e.g., 0 μs, 8 μs, or 16 μs) required by wirelesscommunication device 204 is supported. Each of the two constellationthresholds may be provided as a three-bit encoding provided in an HECapability Field of an association request provided by wirelesscommunication device 204. The first of the two constellation thresholdsmay be referred to as “threshold-16,” and the second of the twoconstellation thresholds may be referred to as “threshold-8.”

FIG. 8 shows a table illustrating an example three-bit encoding used foreach of the two constellation thresholds in accordance with anembodiment. As shown in FIG. 8, BPSK corresponds to a three-bit encodingof ‘000,’ QPSK corresponds to a three-bit encoding of ‘001,’ 16-QAMcorresponds to a three-bit encoding of ‘010,’ 64-QAM corresponds to athree-bit encoding of ‘011,’ 256-QAM corresponds to a three-bit encodingof ‘100,’ and 1024-QAM corresponds to a three-bit encoding of ‘101.’ Ifwireless communication device 204 only supports a 16 μs packetextension, the three-bit encoding of threshold-8 may be set to ‘111,’and the three-bit encoding of threshold-16 may be set to theconstellation at which a maximum packet extension of 16 μs is required.If wireless communication device 204 only supports an 8 μs packetextension, the three-bit encoding of threshold-16 may be set to ‘111,’and the three-bit encoding of threshold-8 may be set to theconstellation at which a maximum packet extension of 8 μs is required.If wireless communication device 204 does not support any type of packetextension, then both threshold-8 and threshold-16 may be set to ‘111’.

Processor 208 may compare the constellation to be used when transmittinga packet to the three-bit encodings of threshold-16 and threshold-8 toinfer the maximum packet extension duration supported by wirelesscommunication device 204 and determine the duration of the packetextension to be added to the end of the packet. For example, processor208 may compare the constellation to be used when transmitting a packet(i.e., the transmitting constellation) to the constellation representedby the three-bit encoding of threshold-16. If the transmittingconstellation is greater than or equal to the constellation representedby the three-bit encoding of threshold-16, then processor 208 maydetermine that wireless communication device 204 supports a maximumpacket extension of 16 μs. If the transmitting constellation is notgreater than or equal to the constellation represented by the three-bitencoding of threshold-16, processor 208 may compare the transmittingconstellation to the constellation represented by the three-bit encodingof threshold-8. If the transmitting constellation is greater than orequal to the constellation represented by the three-bit encoding ofthreshold-8, then processor 208 may determine that wirelesscommunication device 204 supports a maximum packet extension of 8 μs. Ifthe transmitting constellation is not greater than or equal to theconstellation represented by the three-bit encoding of threshold-8,processor 208 may determine that no packet extension is required for thepacket.

In accordance with an embodiment, if wireless communication device 204supports a bandwidth of greater than and/or equal to 80 MHz, thresholdsare not defined for RU sizes less than and/or equal to 242 tones (i.e.,20 MHz). In accordance with another embodiment, no thresholds aredefined for a RU size less than 242 tones. For such low-power use cases,it would be advantageous to use a packet extension (i.e., it may be moreadvantageous to use a packet extension rather than running the PHYhardware clocks faster to meets SIFS).

Processor 208 may determine the duration of the packet extension to beadded to the end of a packet based on the segment boundary parameter andthe determined maximum packet extension duration. In accordance with anembodiment, if the determined maximum packet extension duration is 8 μsand the segment boundary parameter is either 1 or 2 (i.e., the encodedvalue is ‘01’ or ‘10,’ as shown in FIG. 5), then no packet extension isadded. If the determined maximum packet extension duration is 8 μs andthe segment boundary parameter is 3 (i.e., the encoded value is ‘11,’ asshown in FIG. 5), then a packet extension of is 4 μs added to the end ofthe packet. If the determined maximum packet extension duration is 8 μsand the segment boundary parameter is 4 (i.e., the encoded value is‘00,’ as shown in FIG. 5), then a packet extension of is 8 μs added tothe end of the packet.

For example, FIGS. 9A-9D show block diagrams illustrating the determinedmaximum packet extension for a given segment boundary parameter when thedetermined maximum packet extension duration for wireless communicationdevice 204 is 8 μs. In particular, FIGS. 9A-9D show block diagrams of aportion of a PPDU packet 900 to be transmitted to a wirelesscommunication device for which it is determined that a maximum packetextension duration of 8 μs is supported in accordance with one or moreembodiments. In particular, PPDU packet 900 shown in each of FIGS. 9A-9Dis a portion of a data payload field (e.g., data payload field 316, asshown in FIG. 3) for sake of brevity. As shown in each of FIGS. 9A-9D,PPDU packet 900 includes a first OFDM symbol 902, a second OFDM symbol904, and a third OFDM packet 906. Third OFDM symbol 906 is the finalsymbol of the data payload field of PPDU packet 900 in each of FIGS.9A-9D. As further shown in FIGS. 9A-9D, first OFDM symbol 902 and secondOFDM symbol 904 fully comprise data payload, and third OFDM symbol 906partially includes a combination of data payload and/or a first type ofpadding (e.g., MAC padding).

FIG. 9A shows an embodiment in which the combination of data payloadand/or the first type of padding is included up to first segmentboundary 912 (i.e., one symbol segment (first short symbol segment 920)includes the combination of data payload and/or the first type ofpadding), and a second type of padding (i.e., PHY padding 910) isincluded in the remaining symbol segments (i.e., second short symbolsegment 922, third short symbol segment 924, and fourth short symbolsegment 926). Thus, in accordance with such an embodiment, the segmentboundary parameter is equal to ‘1’ (i.e., encoded value ‘01’, as shownin FIG. 5), and no packet extension is added to the end of third OFDMsymbol 906 (i.e., the packet extension duration is 0 us).

FIG. 9B shows an embodiment in which the combination of data payloadand/or the first type of padding is included up to second segmentboundary 914 (i.e., two short symbol segments (first short symbolsegment 920 and second short symbol segment 922) includes thecombination of data payload and/or the first type of padding), and thesecond type of padding (i.e., PHY padding 910) is included in theremaining symbol segments (i.e., third short symbol segment 924 andfourth short symbol segment 926). Thus, in accordance with such anembodiment, the segment boundary parameter is equal to ‘2’ (i.e.,encoded value ‘10’, as shown in FIG. 5), and no packet extension isadded to the end of third OFDM symbol 906 (i.e., the packet extensionduration is 0 μs).

FIG. 9C shows an embodiment in which the combination of data payloadand/or the first type of padding is included up to third segmentboundary 916 (i.e., three short symbol segments (first short symbolsegment 920, second short symbol segment 922, and third short symbolsegment 924) includes the combination of data payload and/or the firsttype of padding), and the second type of padding (i.e., PHY padding 910)is included in the remaining symbol segment (i.e., fourth symbol segment926). Thus, in accordance with such an embodiment, the segment boundaryparameter is equal to ‘3’ (i.e., encoded value ‘11’, as shown in FIG.5), and a packet extension of 4 μs is added to the end of third OFDMsymbol 906.

FIG. 9D shows an embodiment in which the combination of data payloadand/or the first type of padding is included up to fourth segmentboundary 918 (i.e., four short symbol segments (first short symbolsegment 920, second short symbol segment 922, third short symbol segment924, and fourth short symbol segment 926) includes the combination ofdata payload and/or the first type of padding), and therefore, no secondtype of padding is added to third OFDM symbol 906. Thus, in accordancewith such an embodiment, the segment boundary parameter is equal to ‘4’(i.e., encoded value ‘00’, as shown in FIG. 5), and a packet extensionof 8 μs is added to the end of third OFDM symbol 906.

In accordance with an embodiment, if the determined maximum packetextension duration is 16 μs and the segment boundary parameter is 1(i.e., the encoded value is ‘01’, as shown in FIG. 5), then a packetextension of 4 μs is added to the end of the packet. If the determinedmaximum packet extension duration is 16 μs and the segment boundaryparameter is 2 (i.e., the encoded value is ‘10’, as shown in FIG. 5),then a packet extension of 8 μs is added to the end of the packet. Ifthe determined maximum packet extension duration is 16 μs and thesegment boundary parameter is 3 (i.e., the encoded value is ‘11,’ asshown in FIG. 3), then a packet extension of 12 μs is added to the endof the packet. If the determined maximum packet extension duration is 16μs and the segment boundary parameter is 4 (i.e., the encoded value is‘00,’ as shown in FIG. 3), then a packet extension of 16 μs is added tothe end of the packet.

For example, FIGS. 10A-10D show block diagrams illustrating thedetermined maximum packet extension for a given segment boundaryparameter when the determined maximum packet extension duration forwireless communication device 204 is 16 μs. In particular, FIGS. 10A-10Dshow block diagrams of a portion of a PPDU packet 1000 to be transmittedto a wireless communication device for which it is determined that amaximum packet extension duration of 16 μs is supported in accordancewith one or more embodiments. In particular, PPDU packet 1000 shown ineach of FIGS. 10A-10D is a portion of a data payload field (e.g., datapayload field 316, as shown in FIG. 3) for sake of brevity. As shown ineach of FIGS. 10A-10D, PPDU packet 1000 includes a first OFDM symbol1002, a second OFDM symbol 1004, and a third OFDM packet 1006. ThirdOFDM symbol 1006 is the final symbol of the data payload field of PPDUpacket 1000 in each of FIGS. 10A-10D. As further shown in FIGS. 10A-10D,first OFDM symbol 1002 and second OFDM symbol 1004 fully comprise datapayload, and third OFDM symbol 1006 partially includes a combination ofdata payload and/or a first type of padding (e.g., MAC padding).

FIG. 10A shows an embodiment in which the combination of data payloadand/or the first type of padding is included up to first segmentboundary 1012 (i.e., one short symbol segment (first short symbolsegment 1020) includes the combination of data payload and/or the firsttype of padding), and a second type of padding (i.e., PHY padding 1010)is included in the remaining symbol segments (i.e., second short symbolsegment 1022, third short symbol segment 1024, and fourth short symbolsegment 1026). Thus, in accordance with such an embodiment, the segmentboundary parameter is equal to ‘1’ (i.e., encoded value ‘01’, as shownin FIG. 5), and a packet extension of 4 μs is added to the end of thirdOFDM symbol 1006.

FIG. 10B shows an embodiment in which the combination of data payloadand/or the first type of padding is included up to second segmentboundary 1014 (i.e., two short symbol segments (first short symbolsegment 1020 and second short symbol segment 1022) includes thecombination of data payload and/or the first type of padding), and thesecond type of padding (i.e., PHY padding 1010) is included in theremaining symbol segments (i.e., third short symbol segment 1024 andfourth short symbol segment 1026). Thus, in accordance with such anembodiment, the segment boundary parameter is equal to ‘2’ (i.e.,encoded value ‘10’, as shown in FIG. 5), and a packet extension of 8 μsis added to the end of third OFDM symbol 1006.

FIG. 10C shows an embodiment in which the combination of data payloadand/or the first type of padding is included up to third segmentboundary 1016 (i.e., three short symbol segments (first short symbolsegment 1020, second short symbol segment 1022, and third short symbolsegment 1024) includes the combination of data payload and/or the firsttype of padding), and the second type of padding (i.e., PHY padding1010) is included in the remaining symbol segment (i.e., fourth shortsymbol segment 1026). Thus, in accordance with such an embodiment, thesegment boundary parameter is equal to ‘3’ (i.e., encoded value ‘11’, asshown in FIG. 5), and a packet extension of 12 μs is added to the end ofthird OFDM symbol 906.

FIG. 10D shows an embodiment in which the combination of data payloadand/or the first type of padding is included up to fourth segmentboundary 1018 (i.e., four short symbol segments (first short symbolsegment 1020, second short symbol segment 1022, third short symbolsegment 1024, and fourth short symbol segment 1026) includes thecombination of data payload and/or the first type of padding), andtherefore, no second type of padding is added to third OFDM symbol 1006.Thus, in accordance with such an embodiment, the segment boundaryparameter is equal to ‘4’ (i.e., encoded value ‘00’, as shown in FIG.5), and a packet extension of 16 μs is added to the end of third OFDMsymbol 906.

In accordance with an embodiment, to ensure that legacy devices respectthe total frame duration (and therefore do not interfere with anotherdevice's transmission), the LENGTH field of the L-SIG field (e.g., L-SIG306, as shown in FIG. 3) includes the duration combination from anypacket extension used when transmitting a packet. In accordance withsuch an embodiment, the LENGTH field is determined in accordance withEquation 2, which is shown below:

LENGTH=(TXTIME−20/4 μs)×3−3   Equation 2

where TXTIME is equal to the time it takes to transmit the packet (e.g.,the time it takes to transmit the legacy preamble (e.g., legacy preamble320, as shown in FIG.3), the HE preamble (e.g., HE preamble 322, asshown in FIG. 3) and the data payload) plus the duration of the packetextension.

In accordance with one or more embodiments, the packet extension addedto the end of a frame has the same average power as the data payload.This may achieved by repeating a certain portion of the data payloadincluded in the final OFDM symbol to realize the necessary packetextension duration. In an embodiment in which a 0.8 μs guard intervaland a 16 μs packet extension is used, the portion may be repeated 1.2times.

In accordance with an embodiment in which STBC is used, wirelesscommunication device 204 may signal to AP or BS 202 the packet extensionsupported by wireless communication device 204 during the associationphase. For example, wireless communication device 204 may provide anassociation request that includes a capability field that specifies thepacket extension duration supported when using STBC. By doing so, BS orAP 202 need not infer the maximum packet extension supported by wirelesscommunication device 204 when using STBC.

In accordance with an embodiment, wireless communication device 204,when receiving a packet, may infer the data payload length from thenumber of received symbols, the segment boundary parameter and/or theLDPC parameter (in embodiments in which LDPC is used). Wirelesscommunication device 204 may further infer the duration of the packetextension based on the segment boundary parameter.

The encoding scheme that may be used for a single user transmissionscheme is described as follows. The number of payload symbols (N_(SYM)_(_) _(init)) may be determined in accordance with Equation 3, which isshown below:

$\begin{matrix}{N_{{SYM}\; \_ \; {init}} = \left\{ \begin{matrix}{m_{STBC}\left\lceil \frac{{8 \cdot {APEP\_ LENGTH}} + N_{service} + N_{tail}}{m_{STBC} \cdot N_{DBPS}} \right\rceil} & {{if}\mspace{14mu} {BCC}} \\{m_{STBC}\left\lceil \frac{{8 \cdot {APEP\_ LENGTH}} + N_{service}}{m_{STBC} \cdot N_{DBPS}} \right\rceil} & {{if}\mspace{14mu} {LDPC}}\end{matrix} \right.} & \left( {{Equation}\mspace{14mu} 3} \right)\end{matrix}$

where m_(STBC) indicates a coding scheme used for transmission (e.g.,the value of 2 may correspond to the STBC mode, and the value of 1 maycorrespond to another mode), APEP_LENGTH is a configuration transmitvector length value, N_(ES), N_(tail) and N_(service) are the number ofbinary convolution coding (BCC) encoders (e.g., implemented by processor208, as shown by FIG. 2) used to encode a packet, the number of tailbits included in the packet, and the number of service bits included inthe packet, respectively, and N_(DBPS) is the number of data bits perOFDM symbol.

Next, the number of excess bits included in the final OFDM symbol arecalculated. The number of excess bits may be calculated in accordancewith Equation 4, which is shown below:

$\begin{matrix}{N_{{SYM}\; \_ \; {init}} = \left\{ \begin{matrix}{{mod}\left( {{{8 \cdot {APEP\_ LENGTH}} + N_{service} + {N_{tail} \cdot N_{ES}}},{m_{STBC} \cdot N_{DBPS}}} \right)} & {{if}\mspace{14mu} {BCC}} \\{{mod}\left( {{{8 \cdot {APEP\_ LENGTH}} + N_{service}},{m_{STBC} \cdot N_{DBPS}}} \right)} & {{if}\mspace{14mu} {LDPC}}\end{matrix} \right.} & \left( {{Equation}\mspace{14mu} 4} \right)\end{matrix}$

Next, the number of coded bits per short symbol (N_(CBPS) _(_) _(Short))and the number of uncoded bits per short symbol (N_(DBPS) _(_) _(Short))and may be determined in accordance with Equations 5 and 6, which areshown below:

N _(CBPS) _(_) _(short) =N _(SD) _(_) _(short) ·N _(SS) ·N _(BPSCS)  (Equation 5)

N _(DBPS) _(_) _(short) =N _(CBPS) _(_) _(short) ·R   (Equation 6)

where N_(SD) corresponds to the number of tones, N_(SD) shortcorresponds to the number of tones per short symbol, and R is the codingrate. N_(SD) short may be defined based on the number tones N_(SD) inaccordance with the table 600 shown in FIG. 6.

Thereafter, an initial excess factor a_(init) is determined. a_(init)may be determined in accordance with Equation 7, which is shown below:

$\begin{matrix}{a_{init} = \left\{ \begin{matrix}4 & {{{if}\mspace{14mu} N_{EXCESS}} = 0} \\\left\lceil \frac{N_{Excess}}{m_{STBC} \cdot N_{{DBPS},{SHORT}}} \right\rceil & {otherwise}\end{matrix} \right.} & \left( {{Equation}\mspace{14mu} 7} \right)\end{matrix}$

Next, the payload length used for encoding the number of payload bits(N_(pld)) may be determined in accordance with Equation 8, which isshown below:

$\begin{matrix}{\mspace{79mu} {{N_{pld} = {{{N_{{SYM}\; \_ \; {init}} \cdot N_{DBPS}}\mspace{14mu} {if}\mspace{14mu} a_{init}} = 4}}\mspace{20mu} {else}{N_{pld} = {{\left( {N_{{SYM}\; \_ \; {init}} - m_{STBC}} \right) \cdot N_{DBPS}} + {m_{STBC} \cdot a_{init} \cdot N_{{DBPS}\; \_ \; {Short}}}}}}} & \left( {{Equation}\mspace{14mu} 8} \right)\end{matrix}$

Next, the number of available bits (N_(avbits)) post-encoding isdetermined. N_(avbits) may be determined in accordance with Equation 9,which is shown below:

$\begin{matrix}{\mspace{79mu} {{N_{avbits} = {{{N_{{SYM}\mspace{14mu} {init}} \cdot N_{CBPS}}\mspace{14mu} {if}\mspace{14mu} a} = 4}}\mspace{20mu} {else}{N_{avbits} = {{\left( {N_{{SYM}\mspace{14mu} {init}} - m_{STBC}} \right) \cdot N_{CBPS}} + {a \cdot m_{STBC} \cdot N_{{CBPS}\; \_ \; {Short}}}}}}} & \left( {{Equation}\mspace{14mu} 9} \right)\end{matrix}$

where a is the determined segment boundary parameter.

In accordance with an embodiment in which LDPC is used, the number ofcodewords and codeword length are determined may be determined inaccordance with table 1100 shown in FIG. 11.

Next, the number of shortening (zero) bits (N_(shrt)) to be padded tothe data bits before encoding (and that are discarded after encoding) isdetermined. N_(shrt) may be determined in accordance with Equation 10.Equation 10 is shown below:

N _(shrt)=max(0,(N _(CW) ×L _(LDPC) ×R)−N _(pld))   (Equation 10)

where L_(LDPC) corresponds to the codeword length.

The shortening bits are evenly distributed over all codewords with thefirst rem(Nshrt, N_(CW)) (i.e., the resulting remainder when N_(shrt) isdivided by N_(CW)) codewords being shortened 1 bit more than theremaining codewords.

Then, the number of punctured parity bits (N_(punc)) to be removed afterencoding is determined. N_(punc) may be determined in accordance withEquation 11, which is shown below:

N _(punc)=maqx(0,(N _(CW) ×L _(LDPC))−N _(avbits) −N _(pld))   (Equation11)

An additional short symbol segment of parity bits is to be transmittedif Equation 12 (shown below, and also referred to as the “LDPC extrasymbol rule”) is satisfied:

$\begin{matrix}{{\left( {\left( {N_{punc} > {0.1 \times N_{CW} \times L_{LDPC} \times \left( {1 - R} \right)}} \right){AND}\mspace{14mu} \left( {N_{shrt} < {1.2 \times N_{punc} \times \frac{R}{1 - R}}} \right)} \right)\mspace{14mu} {OR}},\left( {N_{punc} > {0.3 \times N_{CW} \times L_{LDPC} \times \left( {1 - R} \right)}} \right)} & \left( {{Equation}\mspace{14mu} 12} \right)\end{matrix}$

If an additional short symbol of parity bits is being sent, then theLDPC “extra symbol” bit field is set in the HE-SIG-A field, andN_(avbits) is updated in accordance with Equation 13, which is shownbelow:

$\begin{matrix}{{N_{avbits} = {N_{avbits} \cdot m_{STBC} \cdot \left( {N_{CBPS} - {3 \cdot N_{{CBPS}\; \_ \; {Short}}}} \right)}}\mspace{14mu} {{{if}\mspace{14mu} a_{init}} = 3}\mspace{14mu} {else}{N_{avbits} = {N_{avbits} \cdot m_{STBC} \cdot N_{{CBPS}\; \_ \; {Short}}}}} & \left( {{Equation}\mspace{14mu} 9} \right)\end{matrix}$

The number of symbols and segments are also updated. The number ofsymbols and segments may be updated in accordance with table 1200 shownin FIG. 12. N_(punc) is then recalculated in accordance with Equation14, which is shown below:

N _(punc)=max(0,(N _(CW) ×L _(LDPC))−N _(avbits) −N _(pld))   (Equation14)

If no additional symbol segment is sent, then the initial number ofsymbols N_(SYM) _(_) _(init) and initial excess factor a_(init) areused, as shown below in Equations 15 and 16:

N_(SYM)=N_(SYM) _(_) _(init)   (Equation 15)

a=a_(init)   (Equation 16)

The punctured bits are evenly distributed over all codewords with thefirst rem(N_(punc), N_(CW)) (i.e., the remainder when N_(punc) isdivided by N_(CW)) codewords being punctured 1 bit more than theremaining codewords.

For LDPC, the number of coded bits to be repeated after encoding aredetermined in accordance with Equation 17, which is shown below:

N _(rep)=max(0, N _(avbits)−(N _(CW) ×L _(LDPC)×(1−R))−N _(pld))  (Equation 17)

The repeated bits are evenly distributed over all codewords with thefirst rem(N_(rep), N_(CW)) (i.e., the remainder when N_(rep) is dividedby N_(CW)) codewords being repeated 1 bit more than the remainingcodewords.

Next, the number of pre-FEC padding bits N_(PAD1) and post-FEC paddingbits N_(PAD2) may be determined in accordance with Equations 18 and 19,respectively, when using a BCC error correction scheme or Equations 20and 21, respectively, when using an LDPC error correction scheme.Equations 16-19 are shown below:

N _(PAD1) =N _(pld)−8·APEP_LENGTH−N _(service) −N _(ES) ·N _(tail)  (Equation 18)

N _(PAD2) =N _(SYM) ×N _(CBPS) −N _(avbits)   (Equation 19)

N _(PAD1) =N _(pld)−8·APEP_LENGTH−N _(service)   (Equation 20)

N _(PAD2) =N _(SYM) ×N _(CBPS) −N _(avbits)   (Equation 21)

Finally, the required packet extension is determined. In particular, therequired maximum packet extension duration to use is determined based onthe constellation thresholds provided for each bandwidth and number ofspatial streams (e.g., antennas) combination supported by wirelesscommunication device 204, as described above.

Accordingly, in embodiments, a transmitting device may be configured toprovide a packet extension for a packet in many ways. For instance, FIG.13 shows a flowchart 1300 of a method performed by a transmitter (e.g.,a device transmitting a DL packet) for determining a packet extensionduration in accordance with an embodiment. The method of flowchart 1300may be implemented by a transmitter 1402 shown in FIG. 14. FIG. 14depicts a block diagram 1400 of transmitter 1402 in accordance with anembodiment. Transmitter 1402 is an example of BS or AP 202, as describedabove in reference to FIG. 2. As shown in FIG. 14, transmitter 1402includes a communication interface 1406 and a processor 1408.Communication interface 1406 is an example of communication interface206, and processor 1408 is an example of processor 208, as describedabove in reference to FIG. 2. Processor 1408 includes a capabilitiesdeterminer 1410, a segment boundary determiner 1412, and a packetextension determiner 1414. Other structural and operational embodimentswill be apparent to persons skilled in the relevant art(s) based on thefollowing discussion regarding flowchart 1300 and transmitter 1402.

Flowchart 1300 begins with step 1302. At step 1302, one or more firstcapabilities of at least a first receiver (e.g., a device receiving a DLpacket) are determined. For example, with reference to FIG. 14,capabilities determiner 1406 may determine one or more firstcapabilities of at least the first receiver (e.g., wirelesscommunication device 204, as shown in FIG. 2). In accordance with anembodiment, the one or more first capabilities are determined byreceiving one or more parameters indicating the one or more firstcapabilities from at least the first receiver during an associationprocess between the transmitter and at least the first receiver. Forexample, with reference to FIG. 14, communications interface 1406,during an association process between transmitter 1402 and at least thefirst receiver, may receive an association request 1416 including one ormore parameters that indicate the one or more capabilities. Associationrequest 1416 may be provided to capabilities determiner 1410.Capabilities determiner 1410 may be configured to determine the one ormore parameters included in association request 1416 and determine oneor more capabilities 1418 of at least the first receiver from theparameter(s).

In accordance with an embodiment, the one or more parameters are one ormore constellation thresholds that each define a constellation level atwhich a maximum duration of packet extension supported by at least thefirst receiver is changed. For example, at least the first receiver mayadvertise two constellation thresholds for each bandwidth and number ofspatial streams combination supported by at least the first receiver.The constellation thresholds (e.g., one or more capabilities 1418) areprovided to packet extension determiner 1418.

At step 1304, a segment boundary parameter that indicates a number ofshort symbol segments that are included in a final symbol of a frame tobe transmitted to at least the first receiver and that include acombination of at least one of a data payload and a first type ofpadding is determined. For example, with reference to FIG. 14, segmentboundary determiner 1412 may determine a segment boundary parameter 1420and provide segment boundary parameter 1420 to packet extensiondeterminer 1414.

In accordance with one or more embodiments, one or more short symbolsegments included in the final symbol that do not include thecombination of at least one of the data payload and the first type ofpadding are padded with a second type of padding.

In accordance with one or more embodiments, the first type of padding isMAC padding (e.g., pre-FEC padding).

In accordance with one or more embodiments, the second type of paddingis MAC padding (e.g., post-FEC padding).

In accordance with one or more embodiments, the determined segmentboundary parameter is provided in a header of the frame. For example,the determined segment boundary parameter may be provided as a two-bitencoded value in the HE-SIG-A field (e.g., HE-SIG-A field 310, as shownin FIG. 3).

At step 1306, a first duration of a first packet extension to be addedto the end of the frame based on the determined one or more firstcapabilities and the determined segment boundary parameter isdetermined. For example, with reference to FIG. 14, packet extensiondeterminer 1414 may determine a first duration of a first packetextension to be added to the end of the frame based one or morecapabilities 1418 and determined segment boundary parameter 1420. Forinstance, in accordance with an embodiment, if the determined maximumpacket extension duration is8 μs and the segment boundary parameter iseither 1 or 2 (i.e., the encoded value is ‘01’ or ‘10,’ as shown in FIG.5), then no packet extension is added. If the determined maximum packetextension duration is 8 μs and the segment boundary parameter is 3(i.e., the encoded value is ‘11,’ as shown in FIG. 5), then a packetextension of 4 μs is added to the end of the packet. If the determinedmaximum packet extension duration is 8 μs and the segment boundaryparameter is 4 (i.e., the encoded value is ‘00,’ as shown in FIG. 5),then a packet extension of 8 μs is added to the end of the packet. Inaccordance with an embodiment, if the determined maximum packetextension duration is 16 μs and the segment boundary parameter is 1(i.e., the encoded value is ‘01’, as shown in FIG. 5), then a packetextension of 4 μs is added to the end of the packet. If the determinedmaximum packet extension duration is 16 μs and the segment boundaryparameter is 2 (i.e., the encoded value is ‘10,’ as shown in FIG. 5),then a packet extension of 8 μs is added to the end of the packet. Ifthe determined maximum packet extension duration is 16 μs and thesegment boundary parameter is 3 (i.e., the encoded value is ‘11,’ asshown in FIG. 5), then a packet extension of 12 μs is added to the endof the packet. If the determined maximum packet extension duration is 16μs and the segment boundary parameter is 4 (i.e., the encoded value is‘00,’ as shown in FIG. 5), then a packet extension of 16 μs is added tothe end of the packet.

In accordance with one or more embodiments, a value of a legacy lengthfield to be provided in a header of the frame based at least on thefirst duration of the first packet extension is determined. For example,the determined value may be provided in the LENGTH field of the L-SIGfield (e.g., L-SIG 306, as shown in FIG. 3).

In some example embodiments, one or more of steps 1302, 1304, and/or1306 of flowchart 1300 may not be performed. Moreover, operations inaddition to or in lieu of steps 1302, 1304, and/or 1306 may beperformed. Further, in some example embodiments, one or more of steps1302, 1304, and/or 1306 may be performed out of order, in an alternatesequence, or partially (or completely) concurrently with each other orwith other operations.

B. Multi-User (MU) Transmission Schemes

In accordance with an embodiment, a BP or AP may provide a packet to aplurality of wireless communication devices. The single-user (SU)padding and packet extension scheme described above in Subsection A maybe generalized for DL MU transmission schemes. For example, multiplewireless communication devices may be grouped together to find a commonframe length and symbol segment padding. The longest packet extensionfrom among all wireless communication devices may be determined andapplied to the frame. In accordance with such an embodiment, a commonsegment boundary parameter is provided to all receiving devices that areto receive a packet. In accordance with an embodiment in which LDPC isused, a common LDPC flag for the extra LDPC symbol is also provided toall wireless communication devices.

FIG. 15 is a block diagram of a system 1500 for providing a packetextension for a packet to be transmitted to a plurality of wirelesscommunication devices 1504 and 1510 in accordance with an embodiment. Asshown in FIG. 15, system 1500 includes a BS or AP 1502, wirelesscommunication device 1504, and wireless communication device 1510. BS orAP 1502 is an example of BS or AP 202, and wireless communicationdevices 1504 and 1510 are examples of wireless communication device 204,as described above in reference to FIG. 2.

BS or AP 1502 may include a communication interface 1506 and a processor1508. Communication interface 1506 may be configured to transmit and/orand receive one or more packets to and/or from any of wirelesscommunication devices 1504 and 1510. Processor 1508 may be configured toperform various operations including generating, formatting and/orencoding packet(s) for transmission by communication interface 1506and/or decoding packet(s) received from any of wireless communicationdevices 1504 and 1510 via communication interface 1506. Whentransmitting packets in accordance with the IEEE 802.11ax protocol,processor 1508 may be further configured to add one or more types ofpadding to the data payload included in the packet(s) and/or a packetextension to the packet(s). Communication interface 1506 may compriseantenna(s).

To determine the duration of a packet extension to be added at the endof a packet, processor 1508 may determine the segment boundary parameterassociated with the packet (as described above in Subsection A) and oneor more capabilities (e.g., constellation thresholds) of each ofwireless communication devices 1504 and 1510 (as also described above inSubsection A). Processor 1508 may determine a respective packetextension duration for the packet for each of wireless communicationdevice 1504 and 1510 and compare each of the determined packet extensiondurations to determine which packet extension duration is the longest.Processor 1508 may add the packet extension having the longest durationto the packet, provide the determined segment boundary parameter in theheader of the packet (e.g., in HE-SIG-A field 310, as shown in FIG. 3),and transmit the packet to each of wireless communication device 1504and 1510.

The encoding scheme that may be used for a downlink multi-usertransmission scheme is described as follows. The number of payloadsymbols for each wireless communication device (“user”) u(N_(SYM init,u)) may be determined in accordance with Equation 22, whichis shown below:

$\begin{matrix}{N_{{{SYM}\mspace{14mu} {init}},u} = \left\{ \begin{matrix}\left\lceil \frac{{8 \cdot {APEP\_ LENGTHu}} + N_{service} + {N_{tail} \cdot N_{{ES},u}}}{N_{{DBPS},u}} \right\rceil & \begin{matrix}{{when}\mspace{14mu} {user}} \\{u\mspace{14mu} {uses}\mspace{14mu} {BCC}}\end{matrix} \\\left\lceil \frac{{8 \cdot {APEP\_ LENGTHu}} + N_{service}}{N_{{DBPS},u}} \right\rceil & \begin{matrix}{{when}\mspace{14mu} {user}} \\{u\mspace{14mu} {uses}\mspace{14mu} {LDPC}}\end{matrix}\end{matrix} \right.} & \left( {{Equation}\mspace{14mu} 3} \right)\end{matrix}$

where the number of excess bits per user (N_(excess,u)) and the initialexcess factor per user (a_(init,u)) may be determined in accordance withthe Equations provided for the single user encoding scheme describedabove in Subsection A, where N_(DBPS), N_(CBPS), N_(DBPS) _(_) _(Short),and N_(CBPS) _(_) _(Short) are replaced with the per user values.

Next, the largest number of initial symbols across all users(N_(SYM max init)) is determined. N_(SYM max init) may be determined inaccordance with Equation 23, which is shown below:

$\begin{matrix}{N_{{SYM}\mspace{14mu} \max \mspace{14mu} {init}} = {\max \left\{ N_{{{SYM}\mspace{14mu} {init}},u} \right\}_{u = 0}^{N_{user} - 1}}} & \left( {{Equation}\mspace{14mu} 23} \right)\end{matrix}$

If two or more users correspond to N_(SYM max init), then a_(max init)is set equal to the largest initial excess factor across those users.Otherwise, a_(max init) is set equal to a_(init,u) of the usercorresponding to N_(SYM max init).

Next, for each user u that uses LDPC encoding, new values are computedfor N_(SYM,u) and a_(u) in accordance to the Equations provided for thesingle user encoding scheme described above in Subsection A, whereN_(DBPS), N_(CBPS), N_(DBPS) _(_) _(Short), and N_(CBPS) _(_) _(Short)are replaced with the per user values, and (8·APEP_LENGTHu+N_(service))in Equation 22 is replaced with N_(pld,u) in accordance with table 1600shown in FIG. 16.

Then, the final number of symbols across the users is determined inaccordance with Equation 24, which is shown below:

N _(SYM)=max{N _(SYM,u)}_(u=0) ^(N) ^(user) ⁻¹   (Equation 24)

If two or more users correspond to N_(SYM), then a is set equal to thelargest value across those users. Otherwise, a is set equal to a_(u) ofthe user corresponding to N_(SYM). If N_(SYM) is greater thanN_(SYM max init) or a is not equal to a_(max init), then the LDPC “extrasymbol” bit field is set in the HE-SIG-A field (MU LDPC extra symbolcondition).

Each user u that uses LDPC encoding may be encoded in accordance withthe Equations provided for the single user encoding scheme describedabove in Subsection A, where N_(DBPS), N_(CBPS), N_(DBPS) _(_) _(Short),and N_(CBPS) _(_) _(Short) are replaced with the per user values, and(8·APEP_LENGTHu+N_(service)) in Equation 22 is replaced with N_(pld,u)in accordance with table 1600 shown in FIG. 16. If the MU LDPC extrasymbol condition is true, then each LDPC user u requires an extra shortsymbol of parity bits (as described above). Thereafter, all LPC userswill have a data duration defined by {N_(SYM),a}.

Each user u that uses BCC encoding may be encoded in accordance with theEquations provided for the single user encoding scheme described above,where N_(DBPS), N_(CBPS), N_(DBPS) _(_) _(Short), and N_(CBPS) _(_)_(Short) are replaced with the per user values, and(8·APEP_LENGTHu+N_(service)) in Equation 22 is replaced with N_(pld,u)in accordance with table 1700 shown in FIG. 17. Thereafter, all BCCusers will have a data duration defined by {N_(SYM),a}.

Finally, the required packet extension is determined. For each user, therequired maximum packet extension (i.e., 0 μs, 8 μs, or 16 μs) isdetermined based on the user's device capability (e.g., constellationthresholds). From the selected set, the specific signal extensionT_(SE,u) to apply to the frame is determined for each user based on thedetermined segment boundary parameter a. The MU signal extension T_(SE)to be applied by all users may be determined in accordance with Equation25, which is shown below:

T _(SE)=max {T _(SE,u)}_(u=0) ^(N) ^(user) ⁻¹   (Equation 25)

Accordingly, in embodiments, a transmitter may be configured to providea packet extension for a packet transmitted to a plurality of receiversin many ways. For instance, FIG. 18 shows a flowchart 1800 of a methodperformed by a transmitter for determining a packet extension durationin accordance with an embodiment. The method of flowchart 1800 may beimplemented by a transmitter 1902 shown in FIG. 19. FIG. 19 depicts ablock diagram 1900 of transmitter 1902 in accordance with an embodiment.Transmitter 1902 is an example of transmitter 1402, as described abovein reference to FIG. 14. As shown in FIG. 19, transmitter 1902 includesa communication interface 1906 and a processor 1908. Communicationinterface 1906 is an example of communication interface 1406 andprocessor 1908 is an example of processor 1408, as described above inreference to FIG. 14. Processor 1908 includes a capabilities determiner1910, a segment boundary determiner 1912, and a packet extensiondeterminer 1914. Other structural and operational embodiments will beapparent to persons skilled in the relevant art(s) based on thefollowing discussion regarding flowchart 1800 and transmitter 1902.

The steps of FIG. 18 are premised on the assumption that transmitter1902 has already determined one or more capabilities of a first receiver(e.g., as described above with reference to step 1302) and hasdetermined the duration of the packet extension with respect to thefirst receiver (e.g., as described above with reference to step 1304).

Flowchart 1800 begins with step 1802. At step 1802, one or more secondcapabilities of at least a second receiver is determined. For example,with reference to FIG. 19, capabilities determiner 1910 may determineone or more second capabilities of at least the second receiver (e.g.,wireless communication device 1510, as shown in FIG. 15). In accordancewith an embodiment, the one or more second capabilities are determinedby receiving one or more parameters indicating the one or more secondcapabilities from at least the second receiving device during anassociation process between the transmitter and at least the secondreceiver. For example, with reference to FIG. 19, communicationsinterface 1906, during an association process between transmitter 1902and the at least second receiver, may receive an association request1950 including one or more parameters that indicate the one or moresecond capabilities. Association request 1950 may be provided tocapabilities determiner 1910. Capabilities determiner 1910 may beconfigured to determine the one or more parameters included inassociation request 1950 and determine one or more capabilities 1952 ofat least second the second receiver from the parameter(s).

At step 1806, a second duration of a second packet extension to be addedto the end of the frame based on the determined one or more secondcapabilities and the determined segment boundary parameter is determined(e.g., segment boundary parameter 1420 determined in step 1304, asdescribed above with reference to FIG. 13). For instance, with referenceto FIG. 19, packet extension determiner 1914 may determine a secondduration of a second packet extension to be added to the end of theframe is based on one or more second capabilities 1952 and determinedsegment boundary parameter 1420 (as described above in Subsection A).For instance, in accordance with an embodiment, if the determinedmaximum packet extension duration is 8 μs and the segment boundaryparameter is either 1 or 2 (i.e., the encoded value is ‘01’ or ‘10,’ asshown in FIG. 5), then no packet extension is added. If the determinedmaximum packet extension duration is 8 μs and the segment boundaryparameter is 3 (i.e., the encoded value is ‘11,’ as shown in FIG. 5),then a packet extension of 4 μs is added to the end of the packet. Ifthe determined maximum packet extension duration is 8 μs and the segmentboundary parameter is 4 (i.e., the encoded value is ‘00,’ as shown inFIG. 5), then a packet extension of 8 μs is added to the end of thepacket. In accordance with an embodiment, if the determined maximumpacket extension duration is 16 μs and the segment boundary parameter is1 (i.e., the encoded value is ‘01’, as shown in FIG. 5), then a packetextension of 4 μs is added to the end of the packet. If the determinedmaximum packet extension duration is 16 μs and the segment boundaryparameter is 2 (i.e., the encoded value is ‘10 ’, as shown in FIG. 5),then a packet extension of 8 μs is added to the end of the packet. Ifthe determined maximum packet extension duration is 16 μs and thesegment boundary parameter is 3 (i.e., the encoded value is ‘11,’ asshown in FIG. 5), then a packet extension of 12 μs is added to the endof the packet. If the determined maximum packet extension duration is 16μs and the segment boundary parameter is 4 (i.e., the encoded value is‘00,’ as shown in FIG. 5), then a packet extension of 16 μs is added tothe end of the packet.

At step 1806, a determination is made as to whether the first durationis greater than the second duration. For example, with reference to FIG.19, packet extension determiner 1914 may determine whether the firstduration is greater than the second duration. If a determination is madethat the first duration is greater than the second duration, flowcontinues to step 1808. Otherwise, flow continues to step 1810.

At step 1808, in response to a determination that the first duration isgreater than the second duration, the first packet extension is added tothe end of the frame. For example, with reference to FIG. 19 packetextension determiner 1914 adds the first packet extension to the end ofthe frame.

At step 1810, in response to a determination that the first duration isless than the second duration, the second packet extension is added tothe end of the frame. For example, with reference to FIG. 19, packetextension determiner 1914 adds the second packet extension to the end ofthe frame.

In accordance with one or more embodiments, after the determined packetextension is added to the frame, the frame is transmitted to both atleast the first receiver and the second receiver.

In some example embodiments, one or more of steps 1802, 1804, 1806,1808, and/or 1810 of flowchart 1800 may not be performed. Moreover,operations in addition to or in lieu of steps 1802, 1804, 1806, 1808,and/or 1810 may be performed. Further, in some example embodiments, oneor more of steps 1802, 1804, 1806, 1808, and/or 1810 may be performedout of order, in an alternate sequence, or partially (or completely)concurrently with each other or with other operations.

C. Uplink (UL) Transmission Embodiments

A BS or AP may send a trigger frame to one or more wirelesscommunication devices that causes the wireless communication device(s)to transmit a trigger-based frame (e.g., a PPDU) to the BS or AP. Thetrigger frame may include various information that the wirelesscommunication device(s) use to format the trigger-based frame. Inaccordance with an embodiment, such information includes, but is notlimited to, a packet extension duration required by the BS or AP, thenumber of symbols that the trigger-based frame is to include, the shortsymbol padding to use, an LDPC extra symbol, a per-wirelesscommunication device bandwidth used to transmit the trigger-based basedframe, a per-wireless communication device number of spatial streamsused to transmit the trigger-based PPDU, and/or a per-wirelesscommunication device modulation coding scheme used to transmit thetrigger-based frame. It is noted that are no per-user HE-SIG fields tosignal short symbol padding or a packet extension. That is, the BS or APmay signal a common packet extension duration to each of the wirelesscommunication device(s), and each of the wireless communicationdevice(s) may apply the same packet extension duration to thetrigger-based frame.

In accordance with an embodiment, the trigger-based frame may beconstructed as follows: wireless communication device(s) using a BCCerror correction scheme may use MAC padding (pre-FEC) to fill allsymbols; wireless communication device(s) using an LDPC error correctionscheme may use MAC padding to fill all symbols except for the finalsymbol segment; for wireless communication device(s) using an LDPC errorcorrection scheme, the final symbol segment for an “extra” symbolsegment of parity may always be used; and/or all wireless communicationdevice(s) may append the packet extension (e.g., 0 μs, 8 μs, or 16 μs)requested by the BS or AP.

In accordance with an embodiment, a wireless communication device isrequired to provide channel state information (CSI) regarding thechannel properties of the communication link between the BS or AP andthe wireless communication device. The CSI may be provided in responseto receiving one or more certain packets from the BS or AP. For example,in accordance with an embodiment, the BS or AP may transmit an HE NullData Packet Announcement (NDPA) frame followed by a NDP. The purpose ofthe NDPA is to announce to the wireless communication device that an NDPis to follow. In response to receiving the NDP, the wirelesscommunication device may provide a feedback frame containing the CSI. Inaccordance with an embodiment, to meet the SIFS time, the BS or AP mayprovide a packet extension to the end of the NDP.

In accordance with one or more embodiments, the NDP packet extensionduration supported by a wireless communication device may be signaled tothe BS or AP during the association process. For example, the wirelesscommunication device may provide an association request that includes acapability field that specifies the packet extension duration supportedfor NDP packets. In accordance with an embodiment, the supporteddurations are 0 μs, 8 μs, or 16 μs. In accordance with such anembodiment, a 2-bit value indicating the supported packet extensionduration (e.g., ‘00’ for 0 μs, ‘01’ for 8 μs, and ‘10’ for 16 μs) may beprovided in the capability field. In accordance with another embodiment,the supported durations are 0 μs and 8 μs. In accordance with such anembodiment, a 1-bit value indicating the supported packet extensionduration (e.g., ‘0’ for 0 μs, and ‘1’ for 8 μs) may be provided in thecapability field.

III. Further Example Embodiments

A device, as defined herein, is a machine or manufacture as defined by35 U.S.C. § 101. Devices may be digital, analog or a combinationthereof. Devices may include integrated circuits (ICs), one or moreprocessors (e.g., central processing units (CPUs), microprocessors,digital signal processors (DSPs), etc.) and/or may be implemented withany semiconductor technology, including one or more of a BipolarJunction Transistor (BJT), a heterojunction bipolar transistor (HBT), ametal oxide field effect transistor (MOSFET) device, a metalsemiconductor field effect transistor (MESFET) or other transconductoror transistor technology device. Such devices may use the same oralternative configurations other than the configuration illustrated inembodiments presented herein.

Techniques and embodiments, including methods, described herein may beimplemented in hardware (digital and/or analog) or hardware combinedwith one or both of software and/or firmware. Techniques describedherein may be implemented in one or more components. Embodiments maycomprise computer program products comprising logic (e.g., in the formof program code or instructions as well as firmware) stored on anycomputer useable storage medium, which may be integrated in or separatefrom other components. Such program code, when executed in one or moreprocessors, causes a device to operate as described herein. Devices inwhich embodiments may be implemented may include storage, such asstorage drives, memory devices, and further types of computer-readablemedia. Examples of such computer-readable storage media include, but arenot limited to, a hard disk, a removable magnetic disk, a removableoptical disk, flash memory cards, digital video disks, random accessmemories (RAMs), read only memories (ROM), and the like (furtherphysical storage hardware). In greater detail, examples of suchcomputer-readable storage media include a hard disk associated with ahard disk drive, a removable magnetic disk, a removable optical disk(e.g., CDROMs, DVDs, etc.), zip disks, tapes, magnetic storage devices,MEMS (micro-electromechanical systems) storage, nanotechnology-basedstorage devices, as well as other media such as flash memory cards,digital video discs, RAM devices, ROM devices. Such computer-readablestorage media may, for example, store computer program logic, e.g.,program modules, comprising computer executable instructions that, whenexecuted, provide and/or maintain one or more aspects of functionalitydescribed herein with reference to the figures, as well as any and allcomponents, steps and functions therein and/or further embodimentsdescribed herein.

Computer readable storage media are distinguished from andnon-overlapping with communication media. Communication media embodiescomputer-readable instructions, data structures, program modules orother data in a modulated data signal such as a carrier wave. The term“modulated data signal” means a signal that has one or more of itscharacteristics set or changed in such a manner as to encode informationin the signal. By way of example, and not limitation, communicationmedia includes wired media as well as wireless media such as acoustic,RF, infrared and other wireless media. Example embodiments are alsodirected to such communication media.

The automatic detection of the power status of electronic device(s)and/or the automatic control scheme of electronic device(s) embodimentsand/or any further systems, sub-systems, and/or components disclosedherein may be implemented in hardware (e.g., hardware logic/electricalcircuitry), or hardware combined with one or both of software (computerprogram code configured to be executed in one or more processors orprocessing devices) and/or firmware.

The embodiments described herein, including systems, methods/processes,and/or apparatuses, may be implemented using well known processingdevices, telephones (smart phones and/or mobile phones), servers,electronic devices (e.g., consumer electronic devices) and/or,computers, such as a computer 2000 shown in FIG. 20. It should be notedthat computer 2000 may represent communication devices, processingdevices, servers, and/or traditional computers in one or moreembodiments. For example, BS or APs 102, 104, 106, BS or AP 202, BS orAP 1402, BS or AP 1502, and/or BS or AP 1902 (as described above inreference to FIGS. 1, 2, 14, 15, and 19, respectively), wirelesscommunication devices 108, 110, 112, 114, 116, 118, and/ 120, wirelesscommunication device 204, wireless communication device 1404, wirelesscommunication devices 1504 and/or 1510, and/or wireless communicationdevice 1904 (as described above in reference to FIGS. 1, 2, 14, 15, and19, respectively), network hardware component 122 (as described above inreference to FIG. 1), any of the sub-systems, components orsub-components respectively contained therein, may be implemented usingone or more computers 2000.

Computer 2000 can be any commercially available and well knowncommunication device, processing device, and/or computer capable ofperforming the functions described herein, such as devices/computersavailable from International Business Machines®, Apple®, Sun®, HP®,Dell®, Cray®, Samsung®, Nokia®, etc. Computer 2000 may be any type ofcomputer, including a desktop computer, a server, etc.

Computer 2000 includes one or more processors (also called centralprocessing units, or CPUs), such as a processor 2006. Processor 2006 isconnected to a communication infrastructure 2002, such as acommunication bus. In some embodiments, processor 2006 cansimultaneously operate multiple computing threads.

Computer 2000 also includes a primary or main memory 2008, such asrandom access memory (RAM). Main memory 2008 has stored therein controllogic 2024 (computer software), and data.

Computer 2000 also includes one or more secondary storage devices 2010.Secondary storage devices 2010 include, for example, a hard disk drive2012 and/or a removable storage device or drive 2014, as well as othertypes of storage devices, such as memory cards and memory sticks. Forinstance, computer 2000 may include an industry standard interface, sucha universal serial bus (USB) interface for interfacing with devices suchas a memory stick. Removable storage drive 2014 represents a floppy diskdrive, a magnetic tape drive, a compact disk drive, an optical storagedevice, tape backup, etc.

Removable storage drive 2014 interacts with a removable storage unit2016. Removable storage unit 2016 includes a computer useable orreadable storage medium 2018 having stored therein computer software2026 (control logic) and/or data. Removable storage unit 2016 representsa floppy disk, magnetic tape, compact disk, DVD, optical storage disk,or any other computer data storage device. Removable storage drive 2014reads from and/or writes to removable storage unit 2016 in a well-knownmanner.

Computer 2000 also includes input/output/display devices 2004, such astouchscreens, LED and LCD displays, monitors, keyboards, pointingdevices, etc.

Computer 2000 further includes a communication or network interface2018. Communication interface 2020 enables computer 2000 to communicatewith remote devices. For example, communication interface 2020 allowscomputer 2000 to communicate over communication networks or mediums 2022(representing a form of a computer useable or readable medium), such asLANs, WANs, the Internet, etc. Network interface 2020 may interface withremote sites or networks via wired or wireless connections.

Control logic 2028 may be transmitted to and from computer 2000 via thecommunication medium 2022.

Any apparatus or manufacture comprising a computer useable or readablemedium having control logic (software) stored therein is referred toherein as a computer program product or program storage device. Thisincludes, but is not limited to, computer 2000, main memory 2008,secondary storage devices 2010, and removable storage unit 2016. Suchcomputer program products, having control logic stored therein that,when executed by one or more data processing devices, cause such dataprocessing devices to operate as described herein, represent embodimentsof the invention.

Any apparatus or manufacture comprising a computer useable or readablemedium having control logic (software) stored therein is referred toherein as a computer program product or program storage device. Thisincludes, but is not limited to, a computer, computer main memory,secondary storage devices, and removable storage units. Such computerprogram products, having control logic stored therein that, whenexecuted by one or more data processing devices, cause such dataprocessing devices to operate as described herein, represent embodimentsof the inventive techniques described herein.

IV. Conclusion

While various embodiments have been described above, it should beunderstood that they have been presented by way of example only, and notlimitation. It will be apparent to persons skilled in the relevant artthat various changes in form and detail can be made therein withoutdeparting from the spirit and scope of the embodiments. Thus, thebreadth and scope of the embodiments should not be limited by any of theabove-described exemplary embodiments, but should be defined only inaccordance with the following claims and their equivalents.

What is claimed is:
 1. A communication device, comprising: one or moreprocessors configured to: identify a final symbol of an outgoing datapacket that includes a data payload; segment the final symbol into aplurality of short symbol segments; determine a last short symbolsegment of the plurality of short symbol segments that includes aportion of the data payload; generate a segment boundary parameter thatidentifies the last short symbol segment of the plurality of shortsymbol segments; and insert the segment boundary parameter into a headerof the outgoing data packet; and a transmitter configured to transmitthe outgoing data packet over a network.
 2. The communication device ofclaim 1, wherein the one or more processors are further configured toadd a first padding to the outgoing data packet based on the determinedlast short symbol and the portion of the data payload.
 3. Thecommunication device of claim 2, wherein the one or more processors arefurther configured to add the first padding to a remainder of the lastshort symbol segment, wherein the remainder of the last short symbolsegment does not include the portion of the data payload.
 4. Thecommunication device of claim 3, wherein the one or more processors arefurther configured to add a second padding to remaining short symbolsegments of the plurality of short symbol segments that follow the lastshort symbol segment.
 5. The communication device of claim 4, whereinthe first padding is pre-forward error correction padding, and thesecond padding is post-forward error correction padding.
 6. Thecommunication device of claim 5, wherein the second padding is an OFDMscrambling sequence.
 7. The communication device of claim 4, wherein theone or more processors are further configured to: receive a capabilityof a receiver configured to receive the outgoing data packet, anddetermine a maximum packet extension length based on the capability. 8.The communication device of claim 7, wherein the one or more processorsare further configured to: determine whether the second padding is lessthan the maximum packet extension length; and in response to determiningthat the second padding is less than the maximum packet extensionlength, add a packet extension to the outgoing data packet that has alength based on the maximum packet extension length and a length of thesecond padding.
 9. The communications device of claim 1, wherein theoutgoing data packet is configured according to IEEE 802.11ax, andwherein the segment boundary parameter is inserted in a HE-signal-Afield of the header of the outgoing data packet.
 10. The communicationdevice of claim 9, wherein the header further includes one or more of anHE short training field or an HE long training field.
 11. A method ofgenerating an outgoing data packet for transmittal over a network,comprising: identifying a final symbol of the outgoing data packet, thefinal symbol of the outgoing data packet being a last symbol thatincludes a portion of a data payload; segmenting the final symbol into aplurality of short symbol segments; determining a last short symbolsegment of the plurality of short symbol segments that includes theportion of the data payload; generating a segment boundary parameterthat identifies the last short symbol segment of the plurality of shortsymbol segments; inserting the segment boundary parameter into a headerof the outgoing data packet; and transmitting the outgoing data packetover the network.
 12. The method of claim 11, further comprising: addinga first padding to the outgoing data packet based on the determined lastshort signal segment and the portion of the data payload, wherein thefirst padding is added to a remainder of the last short symbol segment,wherein the remainder of the last short symbol segment does not includethe portion of the data payload.
 13. The method of claim 12, furthercomprising: adding a second padding to remaining short symbol segmentsof the plurality of short symbol segments that follow the last shortsymbol segment.
 14. The method of claim 13, wherein the first padding ispre-forward error correction padding, and wherein the second padding ispost-forward error correction padding.
 15. The method of claim 13,further comprising: receiving a capability of a receiver configured toreceive the outgoing data packet; and determining a maximum packetextension length based on the received capability.
 16. The method ofclaim 15, further comprising: determining that a length of the secondpadding is less than the maximum packet extension length; and inresponse to the determining that the length of the second padding isless than the maximum packet extension length, adding a packet extensionto the outgoing data packet equal in length to a difference between themaximum packet extension length and the length of the second padding.17. The method of claim 16, wherein the plurality of short symbolsegments includes four short symbol segments, each having a duration of4 μs, and wherein the maximum packet extension length is 8 μs.
 18. Themethod of claim 16, wherein the plurality of short symbol segmentsincludes four short symbol segments, each having a duration of 4 μs, andwherein the maximum packet extension length is 16 μs.
 19. The method ofclaim 11, wherein the outgoing data packet is configured according toIEEE 802.11ax, and wherein the segment boundary parameter is inserted ina HE-signal-A field of the header of the outgoing data packet.
 20. Themethod of claim 11, wherein the header further includes one or more ofan HE short training field or an HE long training field.